<script>
	/*基本数据类型
		undefined，Boolean,Number,String，null
	*/

	//声明了但未赋值
	var x;
	document.write("声明一个未赋值的x："+x);
	document.write("<br>");

	// 布尔
	var a=true;
	var b=false;
	document.write("布尔值："+a);
	document.write("<br>");
	document.write("布尔值："+b);
	document.write("<br>");

	// 数字
	// javascript中的Number可以表示十进制，八进制，十六进制整数，浮点数，科学记数法
	var n1=10;
	var n2=012;//第一位是0，表示八进制
	var n3=0xA;//0x开头表示十六进制
	var n4=3.14;//有小数点表示浮点数
	var n5=3.14e2;//使用e的幂表示科学计数法
 	document.write("十进制 10 的值: "+n1);
  	document.write("<br>");
	document.write("八进制 012 的值: "+n2);
	document.write("<br>");
	document.write("十六进制 0xA 的值: "+n3);
	document.write("<br>");
	document.write("浮点数 3.14 的值: "+n4);
	document.write("<br>");
	document.write("科学记数法 3.14e2 的值: "+n5);
	document.write("<br>");

// 字符串
/* 与java不同的是，javascript中没有字符的概念，
只有字符串，所以单引号和双引号，都用来表示字符串。*/
  var x='hello '; //单引号
  var y="javascript"; //双引号
  document.write("单引号的字符串:"+x);
  document.write("<br>");
  document.write("双引号的字符串:"+y);

// 动态类型
/* 变量的类型是动态的，当值是整数的时候，
就是Number类型，当值是字符串的时候，就是String类型*/
var s=10;
document.write("	此时变量s的值为"+s+"是Number类型");
document.write("<br>")
s="hello javascript";
document.write("此时变量s的值为"+s+"是String类型");
  document.write("<br>");

// 变量类型判断
/*使用typeof来进行判断数据类型

正是因为变量是动态类型的，所以无法确定当前到底是哪种类型，这个时候，就可以使用typeof来进行判断*/
var v;
document.write("此时未赋值，变量v的类型为："+typeof v);
document.write("<br>");
v=5;
document.write("赋值为5，变量v的类型为："+typeof v);
document.write("<br>");
v="hello javascript";
document.write("赋值为'hello javascript'，变量v的类型为："+typeof v);
document.write("<br>");
v=true;
document.write("赋值为true，变量v的类型为："+typeof v);
document.write("<br>");
v=5.1;
document.write("赋值为5.1，变量v的类型为："+typeof v);
document.write("<br>");

// null空对象/对象不存在
</script>